package netctoss.demo.entrty;


import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.util.Date;
@Table(name = "account")
public class Account {

  @Id
  @Column(name ="account_id")
  private Long accountId;
  @Column(name ="account_recommender_id")
  private Long accountRecommenderId;
  @Column(name ="account_login_name")
  private String accountLoginName;
  @Column(name ="account_login_passwd")
  private String accountLoginPasswd;
  @Column(name ="account_status")
  private String accountStatus;

  @Column(name ="account_create_date")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "CTT")
  private Date accountCreateDate;

  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "CTT")
  @Column(name ="account_pause_date")
  private Date accountPauseDate;

  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "CTT")
  @Column(name ="account_close_date")
  private Date accountCloseDate;

  @Column(name ="account_real_name")
  private String accountRealName;

  @Column(name ="account_idcard_no")
  private String accountIdcardNo;

  @Column(name ="account_birthdate")
  @JsonFormat(pattern = "yyyy-MM-dd", timezone = "CTT")
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  private Date accountBirthdate;

  @Column(name ="account_gender")
  private String accountGender;

  @Column(name ="account_occupation")
  private String accountOccupation;

  @Column(name ="account_telephone")
  private String accountTelephone;

  @Column(name ="account_email")
  private String accountEmail;

  @Column(name ="account_mail_address")
  private String accountMailAddress;

  @Column(name ="account_zipcode")
  private String accountZipcode;

  @Column(name ="account_qq")
  private String accountQq;

  @Column(name ="account_last_login_time")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "CTT")
  private Date accountLastLoginTime;

  @Column(name ="account_last_login_ip")
  private String accountLastLoginIp;

  @Transient
  private String recommenderIdcardNo; //推荐人身份证号

  public String getRecommenderIdcardNo() {
    return recommenderIdcardNo;
  }

  public void setRecommenderIdcardNo(String recommenderIdcardNo) {
    this.recommenderIdcardNo = recommenderIdcardNo;
  }

  public Long getAccountId() {
    return accountId;
  }

  public void setAccountId(Long accountId) {
    this.accountId = accountId;
  }


  public Long getAccountRecommenderId() {
    return accountRecommenderId;
  }

  public void setAccountRecommenderId(Long accountRecommenderId) {
    this.accountRecommenderId = accountRecommenderId;
  }


  public String getAccountLoginName() {
    return accountLoginName;
  }

  public void setAccountLoginName(String accountLoginName) {
    this.accountLoginName = accountLoginName;
  }


  public String getAccountLoginPasswd() {
    return accountLoginPasswd;
  }

  public void setAccountLoginPasswd(String accountLoginPasswd) {
    this.accountLoginPasswd = accountLoginPasswd;
  }


  public String getAccountStatus() {
    return accountStatus;
  }

  public void setAccountStatus(String accountStatus) {
    this.accountStatus = accountStatus;
  }


  public Date getAccountCreateDate() {
    return accountCreateDate;
  }

  public void setAccountCreateDate(Date accountCreateDate) {
    this.accountCreateDate = accountCreateDate;
  }


  public Date getAccountPauseDate() {
    return accountPauseDate;
  }

  public void setAccountPauseDate(Date accountPauseDate) {
    this.accountPauseDate = accountPauseDate;
  }


  public Date getAccountCloseDate() {
    return accountCloseDate;
  }

  public void setAccountCloseDate(Date accountCloseDate) {
    this.accountCloseDate = accountCloseDate;
  }


  public String getAccountRealName() {
    return accountRealName;
  }

  public void setAccountRealName(String accountRealName) {
    this.accountRealName = accountRealName;
  }


  public String getAccountIdcardNo() {
    return accountIdcardNo;
  }

  public void setAccountIdcardNo(String accountIdcardNo) {
    this.accountIdcardNo = accountIdcardNo;
  }


  public Date getAccountBirthdate() {
    return accountBirthdate;
  }

  public void setAccountBirthdate(Date accountBirthdate) {
    this.accountBirthdate = accountBirthdate;
  }


  public String getAccountGender() {
    return accountGender;
  }

  public void setAccountGender(String accountGender) {
    this.accountGender = accountGender;
  }


  public String getAccountOccupation() {
    return accountOccupation;
  }

  public void setAccountOccupation(String accountOccupation) {
    this.accountOccupation = accountOccupation;
  }


  public String getAccountTelephone() {
    return accountTelephone;
  }

  public void setAccountTelephone(String accountTelephone) {
    this.accountTelephone = accountTelephone;
  }


  public String getAccountEmail() {
    return accountEmail;
  }

  public void setAccountEmail(String accountEmail) {
    this.accountEmail = accountEmail;
  }


  public String getAccountMailAddress() {
    return accountMailAddress;
  }

  public void setAccountMailAddress(String accountMailAddress) {
    this.accountMailAddress = accountMailAddress;
  }


  public String getAccountZipcode() {
    return accountZipcode;
  }

  public void setAccountZipcode(String accountZipcode) {
    this.accountZipcode = accountZipcode;
  }


  public String getAccountQq() {
    return accountQq;
  }

  public void setAccountQq(String accountQq) {
    this.accountQq = accountQq;
  }


  public Date getAccountLastLoginTime() {
    return accountLastLoginTime;
  }

  public void setAccountLastLoginTime(Date accountLastLoginTime) {
    this.accountLastLoginTime = accountLastLoginTime;
  }


  public String getAccountLastLoginIp() {
    return accountLastLoginIp;
  }

  public void setAccountLastLoginIp(String accountLastLoginIp) {
    this.accountLastLoginIp = accountLastLoginIp;
  }

}
